package com.hzlj.position.locate.common.dto.reportInitiative;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.fz.common.base.enums.db.ResultField;
import com.fz.common.dict.annotation.Dict;
import com.hzlj.position.config.common.dto.common.PositionHandleExtDTO;
import com.hzlj.position.locate.common.common.ReportTimesDTO;
import com.hzlj.position.locate.common.model.ReportInitiative;
import com.hzlj.sqjz.jz.common.dto.common.JzCommonQueryResultDTO;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.util.Date;

import static com.fz.common.base.core.date.DateUtils.*;

/**
 * 通信联络核查-人工核验(ReportInitiative)查询结果返回DTO
 *
 * @author lifh
 * @date 2023-03-13 19:22:32
 */
@Data
@ToString
@Accessors(chain = true)
public class ReportInitiativeWithJzJbxxDTO extends JzCommonQueryResultDTO {
    /**
     * 主键
     */
    @ResultField(ReportInitiative.class)
    private String id;
    /**
     * 所属天
     */
    @ResultField(ReportInitiative.class)
    @JsonFormat(locale = LOCALE, timezone = TIME_ZONE, pattern = DATE_SHORT_FORMAT)
    private Date belongDay;
    /**
     * 人工上报状态,dict-REPORT_STATUS
     */
    @ResultField(ReportInitiative.class)
    @Dict(value = "REPORT_INITIATIVE_STATUS")
    private String reportStatus;
    /**
     * 人工上报状态,dict-REPORT_STATUS(文本)
     */
    private String reportStatusText;
    /**
     * 上报时间
     */
    @ResultField(ReportInitiative.class)
    private Date reportTime;
    /**
     * 上报成功的次数
     */
    @ResultField(ReportInitiative.class)
    private Integer reportSuccessAmount;
    /**
     * 上报地址
     */
    @ResultField(ReportInitiative.class)
    private String reportAddress;
    /**
     * 上报的现场图片
     */
    @ResultField(ReportInitiative.class)
    private String fileIds;
    /**
     * 上报时间点配置+上报结果,json-ReportTimesDTO
     */
    @ResultField(ReportInitiative.class)
    private ReportTimesDTO reportTimes;
    /**
     * 是否已经处理,dict-HANDLE_STATUS
     */
    @Dict("HANDLE_STATUS")
    @ResultField(ReportInitiative.class)
    private String handleStatus;
    /**
     * 是否已经处理,dict-HANDLE_STATUS(文本)
     */
    private String handleStatusText;
    /**
     * 异常处理内容
     */
    private PositionHandleExtDTO handleExt;
}

